// JavaScript Document

$(function() {
	
	$.ajaxSetup({
		
		error: function(xhr,err) 
		{		
			$('<div id="dialog-error"></div>').html('<p>Ops! Ocorreu um Erro: <br><br>' + xhr.responseText + '</p><br>')
							  .dialog({
								  close: function(event , ui) {
									  $(this).remove();
								  },
								  title: "Error: " + err,
								  width: 340
							  });
		}
	});
	
/* FUNÇÕES
----------------------------------------------------------*/

	function controlaAltern(tipo, $context) 
	{
		camposDesable = new Array();
		
		if ( tipo.toLowerCase() == "text") 
		{
			camposDesable.push('input[name="valor[]"]');
			camposDesable.push('select[name="acao_seMarcada[]"]');
			
			if ( $('#descAcao').val() == "")
				camposDesable.push('input[name="descAcao[]"]');
				
			if ( $('#valorAcao').val() == "")
				camposDesable.push('input[name="valorAcao[]"]');
			
		} else 
		{
			camposDesable.push('select[name="tipo[]"]'   );
			camposDesable.push('select[name="mascara[]"]');
			camposDesable.push('input[name="tamanho[]"]' );
			camposDesable.push('select[name="acao_seValor[]"]');
			camposDesable.push('input[name="descAcao[]"]');
			camposDesable.push('input[name="valorAcao[]"]');
		}
		
		
		campos = camposDesable.join(', ');
		
		$('input, select', $context).not(campos).removeAttr('disabled');
		$(campos, $context).attr('disabled', 'disabled');
		$(campos, $context).not('select').val('');
		
		$(campos, $context).not('input').children('option').each(function (index) {
			
			selected = $.trim( $(this).val() );
			
			if ( selected == "" ) 
			{
				$(this).attr('selected', 'selected');
			}
		});
		
		
		if ( tipo.toLowerCase() == "check" || tipo.toLowerCase() == "radio")
		{
			$('input[name="descAlternativa[]"]', $context).addClass('validate[required] text-input');
		} else 
		{
			$('input[name="descAlternativa[]"]', $context).removeClass('validate[required] text-input');
		}
		
	}
	
	
	function addAltern() 
	{
		
		var $ultimoTBODY  = $('#cadAlternativas tbody:last-child');
		var $tipoElemento = $ultimoTBODY .find('select[name="tipoElemento[]"]');
		var index 		  = $tipoElemento.find('option:selected').index();
		
		$('#cadAlternativas').append('<tbody>' + $ultimoTBODY.html() + '</tbody>');
		
		$tbodyInserido = $('#cadAlternativas tbody:last-child');
		
		$tbodyInserido.find('select[name="tipoElemento[]"] option:eq(' + index + ')')
					  .attr('selected', 'selected');
		$tbodyInserido.find('input[name="descAlternativa[]"]').focus();
		
		var ultimaOrdem = $ultimoTBODY.find('input[name="ordemAltern[]"]').val();
		$tbodyInserido.find('input[name="ordemAltern[]"]').val( (Number(ultimaOrdem) + 1) );
		
		var ultimoTipo = "";
		$ultimoTBODY.find('#tipoElemento option:selected').each(function () {
							ultimoTipo = $(this).val();
		});
		
		if ( $.trim(ultimoTipo) == "check" )
		{
			$tbodyInserido.find('#posicao option[value="P"]').attr('checked', 'checked');
		}
	}
	
	
	function delAltern($tbody) 
	{
		if ( $tbody.siblings('tbody').length > 0  )
		{
			$tbody.remove();
		}
	}
	
	function removeNotys() 
	{
		var notysAtivas = "";
		for (i = 0; i < arrNotys.length; i++ )
		{
			notysAtivas += " #" + arrNotys[i] + ", ";
		}
		
		if ( notysAtivas != "")
			$(notysAtivas).remove();
	}


	function showNoty(texto) 
	{
		
		removeNotys();
		
		var id = noty({
					"text":texto,
					"layout":"bottomRight",
					"type":"information",
					"animateOpen":{"height":"toggle"},
					"animateClose":{"height":"toggle"},
					"speed":500,
					"timeout":60000,
					"closeButton":true,
					"closeOnSelfClick":true,
					"closeOnSelfOver":false,
					"modal":false
				 });
				 
		// Adicionando ao array global a notificação que foi criada
		arrNotys.push(id);
		
		return id;
	}
	
	function dialogNovaCateg(titulo)
	{
		$dialog = $('#novaCategPerg');
		$dialog.find('input[type="text"], input[type="hidden"]').not('input[name="nome_tabela"]').val('');
		
		$dialog.dialog({
			width: 625,
			height: 425,
			modal: true,
			title: titulo,
			buttons:
			[
				{
					text: "Confirmar",
					click: function() {
						$(this).find('form').submit();
					}
				},
				{
					text: "Cancelar",
					click: function() { 
						$(this).dialog("close");
						
					}
				}
			]
		});
		
		return $dialog;
	}
	

/* ATRIBUIÇÕES GERAIS
----------------------------------------------------------*/
	
	// Array global que conterá os IDs das notificações que estão ativas
	arrNotys = new Array();
	
	$('#formCadastroPerg') .validationEngine(); // Plugin de validação de formulário
	$('#formAlteracaoPerg').validationEngine(); // Plugin de validação de formulário 
	$('.formCadastro')     .validationEngine(); // Plugin de validação de formulário 
	
	
	
	$('.addAlternativa').live('click', function() {
		addAltern() ;
	});
	
	
	$('.delAlternativa').live('click', function() {
		$tbody = $(this).closest('tbody');
		delAltern($tbody);
	});
	
	$('table.list').find('td').live({
		
		mouseover: function() {
			$(this).closest('tr').children('td').css('background', '#D1D1D1');
		},
		
		mouseout: function() {
			$(this).closest('tr').children('td').css('background', '#EEE');
		}
		
	});



/* PERGUNTAS -> LISTAGEM
----------------------------------------------------------*/

	$('#btAlterar').live('click', function(evt) {

		evt.preventDefault();
		
		var codPerg = $(this).attr('name');
		window.location = 'area_admin.php?page=pergunta&acao=alter&codPergunta=' + codPerg;
		
	});
	
	
	$('#btExcluir').live('click', function(evt) {

		evt.preventDefault();
		var codPerg = $(this).attr('name');
		
		jConfirm('Desela realmente excluir este registro?', 'Antenção', function(opc) {
			
			if (opc)
			{
				
				
				var $dialog = $('<div id="dialog"></div>');
				var iconCarregando = '<img src="../images/loading_bar-01.gif" style="width:100%; height:30px; margin-top:20px;" />';
				
				$.ajax({
				url: '../manip_dados/delete.php',
				data: { codPergunta: codPerg, nome_tabela: "pergunta" },
				type: "POST",
				dataType: "text",
				timeout: 300000, // 5 minutos
				cache: false,
				beforeSend: function(){
					$dialog.append('Excluindo pergunta...<br>' + iconCarregando)
						   .dialog({ 
						   		modal: true, 
								title: 'Exclusão'
							})
							.css({
								paddingTop: "25px"
							});
				},
				error: function(xhr,er) {
					
					$dialog.html('<p>Ops! ocorreu um erro! Descrição do Erro: <br><br>' + xhr.responseText + '</p>')
					.dialog({
						close: function(event , ui){
							$(this).remove();
						},
						modal: true, 
						title: 'Erro'
					})
				},
				complete: function() {
					$dialog.remove();
				},
				success: function( data, textstring ) {
					
					if ( data.indexOf('sucesso!') >= 0 )
					{
						jAlert(data, 'Informação', function() {
							window.location = 'area_admin.php?page=pergunta&acao=list';
						});
					} else 
					{	
						$('<div/>').html(data).dialog({
							close: function(event , ui){
								$(this).remove();
							},
							modal: true, 
							title: 'Erro'
						});
					}
				}
				
			});
			
			}
			
		});
		
	});
	


/* PERGUNTAS -> CADASTRO E ALTERAÇÃO
----------------------------------------------------------*/

	// CAMPO -> Descrição
	/*
	$('input[name="descAlternativa[]"]').live('focusout', function() {
		
		var requerido = $(this).closest('table').find('input[name="valor[]"]').hasClass("validate[required]");
		
		// Caso seja selecionado uma opção de alternativa de marcação/seleção, o campo descAlternativa
		// será 'requerido', então por padrão atribui-se ao campo valor pré-definido a primeira letra
		// da descrição informada
		if ( requerido )
		{
			valor = $.trim( $(this).val() );
			
			if ( valor != "" )
			{
				$('input[name="valor[]"]').val( valor.substring(0, 1) );
			}
		}
		
	});
	*/
	
	
	// CAMPO -> Quantidade de Respostas
	$('select[name="qtdRespostas"]').live({
		
		focus: function() {
			var texto = "Define se conterá uma única resposta ou quantas forem informadas " + 
						"pelo usuário." + 
						"<br/>EXEMPLOS para mais de uma resposta:" + 
						"<br/>- Listagem de Lotes";
			showNoty(texto);
		},
		
		focusout: function() {
			removeNotys();
		},
		
		change: function() {
	
			$context = $(this).closest('tbody');
			
			$(this).children('option:selected').each(function () {
				
				/* So for selecionada a opção de várias respostas, 
				 * é mostrada a opção 'PROX_R' das ações (que estava
				 * oculta). Caso contrário, esconde esta opção.
				 */
				selected = $.trim( $(this).val() );
				if (selected == "V") // Várias respostas
				{
					$('#acao_seMarcada option[value="PROX_R"]', $context).css('display', 'block');
					$('#acao_seValor   option[value="PROX_R"]', $context).css('display', 'block');
				} else 
				{
					$('#acao_seMarcada option[value="PROX_R"]', $context).css('display', 'none');
					$('#acao_seValor   option[value="PROX_R"]', $context).css('display', 'none');
				}
				
			});
		
		}
	});
	
	// CAMPO -> Valor Pré-definido
	$('#valor').live({
		
		focus: function() {
			var texto = "Valor a ser armazenado quando esta alternativa for selecionada." + 
						"<br>Usado geralmente em alternativas de única escolha!";
			showNoty(texto);
		},
		
		focusout: function() {
			removeNotys();
		}, 
		
		keyup: function() {
			$(this).val( $(this).val().toUpperCase() );
		}
	});
	
	
	// CAMPO -> Ordem Anternativa
	$('#ordemAltern').live({
		
		focus: function() {
			var texto = "Ordem em que esta alternativa será exibida.";
			showNoty(texto);
		},
		
		focusout: function() {
			removeNotys();
		}
	});

	
	// CAMPO -> Ação ao ser marcada
	$('#acao_seMarcada').live({
		
		focus: function() {
			var texto = "Ação a ser executada caso a alternativa seja marcada.";
			showNoty(texto);
		},
		
		focusout: function() {
			removeNotys();
		},
		
		change: function() {
	
			$context = $(this).closest('tbody');
			
			$(this).children('option:selected').each(function () {
				
				selected = $.trim( $(this).val() );
				
				if (selected == "Q" || selected == "S" || selected == "DE_ATE" ) // Questão, Seção ou Responder De Até
				{
					$('#descAcao', $context).siblings('label').text('Núm. da perg./seção');
					$('#descAcao', $context).removeAttr('disabled')
											.addClass('validate[required] text-input')
											.focus()
											.trigger('focusin');
				} else 
				{
					if (selected == "MSG") 
					{
						$('#descAcao', $context).siblings('label').text('Descrição da mensagem');
						$('#descAcao', $context).removeAttr('disabled')
											.addClass('validate[required] text-input')
											.focus()
											.trigger('focusin');
					} else 
					{
						$('#descAcao', $context).siblings('label').text('Núm. da perg./seção');
						$('#descAcao', $context).attr('disabled', 'disabled')
												.removeClass('validate[required] text-input');
					}
				}
				
			});
		
		}
		
	});
	
	// Ação se possuir valor
	$('#acao_seValor').live({
		
		focus: function() {
			var texto = "Ação a ser executada quando a alternativa for preenchida com um determinado valor.";
			showNoty(texto);
		},
		
		focusout: function() {
			removeNotys();
		},
		
		change: function() {

			$context = $(this).closest('tbody');
			
			$(this).children('option:selected').each(function () {
				
				selected = $.trim( $(this).val() );
				
				
				if (selected != "")
				{
					
					$('#valorAcao', $context).removeAttr('disabled').addClass('validate[required] text-input');
					
					if (selected == "Q" || selected == "S" || selected == "DE_ATE" ) // Questão, Seção ou Responder De Até
					{
						$('#descAcao', $context).siblings('label').text('Núm. da perg./seção');
						$('#descAcao', $context).removeAttr('disabled')
												.addClass('validate[required] text-input')
												.focus()
												.trigger('focusin');
					} else 
					{
						if (selected == "MSG")
						{
							$('#descAcao', $context).siblings('label').text('Descrição da mensagem');
							$('#descAcao', $context).removeAttr('disabled')
												.addClass('validate[required] text-input')
												.focus()
												.trigger('focusin');
						} else 
						{
							$('#descAcao', $context).siblings('label').text('Núm. da perg./seção');
							$('#descAcao', $context).attr('disabled', 'disabled')
													.removeClass('validate[required] text-input');
							$('#valorAcao', $context).focus().trigger('focusin');
						}
					}
				
				} else 
				{
					$('#descAcao', $context).siblings('label').text('Núm. da perg./seção');
					$('#descAcao' , $context).val('').attr('disabled', 'disabled').removeClass('validate[required] text-input');
					$('#valorAcao', $context).val('').attr('disabled', 'disabled').removeClass('validate[required] text-input');
				}
				
			});
		
		}
		
	});
	
	
	// CAMPO -> Núm. da perg./seção  |  Descrição da mensagem
	$('#descAcao').live({
		
		focusin: function() {
			
			var tipoAltern 	= "";
			var acao 		= "";
			
			$('#tipoElemento').children('option:selected').each(function () {
				tipoAltern = $.trim( $(this).val() );
			});
			
			if (tipoAltern == "text")
			{
				$('#acao_seValor').children('option:selected').each(function () {
					acao = $.trim( $(this).val() );
				});
			} else
			{
				$('#acao_seMarcada').children('option:selected').each(function () {
					acao = $.trim( $(this).val() );
				});
			}
			
			
			if (acao == "DE_ATE")
			{			
				var texto = "Define a sequência de perguntas que terá que responder." +
							"<br>Siga o exemplo: para tornar obrigatório o preenchimento " + 
							"das questões 2.03 à 2.30, separe por traço: <br><br>" +
							"2.03-2.30";
				showNoty(texto);
			}
		},
		
		focusout: function() {
			removeNotys();
		}
		
	});
	
	// FOCO do campo valorAcao
	$('#valorAcao').live({
		
		focusin: function() {
					
			var texto = "Caso não precise de um valor específico para acionar a ação, " +
						"informe 'Nenhum'.";
			showNoty(texto);
			
		},
		
		focusout: function() {
			removeNotys();
		}
	});
	
	
	// FOCO do select "codCateg"
	$('select[name="codCateg"]').live({
		
		focusin: function() {
					
			var texto = "Categoria utilizada para agrupar perguntas em comum na forma de tabela." +
						"Geralmente utilizada quando a pergunta possuir Pré-respostas. Ex.:<br>" +
						"- Código das Culturas <br>- Tipos de Animais <br>-Tipos de Atividade, etc.";
			showNoty(texto);
			
		},
		
		focusout: function() {
			removeNotys();
		},
		
		change: function() {
			$(this).find('option:selected').each(function() 
			{
				if ( $(this).val() != "" )
				{
					$('#btEditCateg').removeAttr('disabled');
					$('select[name="qtdRespostas"]').val('').attr('disabled', 'disabled');
				} else 
				{
					$('#btEditCateg').attr('disabled', 'disabled');
					$('select[name="qtdRespostas"]').removeAttr('disabled');
				}
			});
		}
	});
	
	
	// AÇÃO do Botão "Nova Categoria"
	$('#btNovaCateg').live('click', function() {
		
		$dlgNovaCateg = dialogNovaCateg("Nova categoria da Pergunta");
		
		$.post("../config/funcoes_db.php", { acao: "ultimoCodigo", tabela: "categoria" },
			function(data) {
				
				var cod = 0;
				var ultimoCod = parseInt(data);
				
				if (!isNaN(ultimoCod))
				{
					cod = ultimoCod;
				}
				cod++;
				
				$dlgNovaCateg.find('input[name="codCateg"]').val(cod);
			}
		);
		
	});
	
	$('#btEditCateg').live('click', function() {
		
		codCateg = $('select[name="codCateg"] option:selected').val();
		url      = '/pesquisacampo/manip_dados/jsonGeral.php';
		
		$.ajax({
			url: url,
			data: { 
				tabelaPrincipal: 'Categoria', 
				jsonObjName: 	 'categ',
				codigo: 		 codCateg
			},
			type: "POST",
			dataType: "json",
			timeout: 300000, // 5 minutos
			cache: false,
			success: function( data ) {
				
				$dialog = dialogNovaCateg("Alterar categoria da Pergunta");
				$dialog.find('form[name="categoria"]').attr('action', '/pesquisacampo/manip_dados/update.php');
				
				$dialog.find('input[name="codCateg"]')    .val(data.categ[0].codCateg);
				$dialog.find('input[name="descCateg"]')   .val(data.categ[0].descCateg);
				$dialog.find('input[name="codsPreResps"]').val(data.categ[0].codsPreResp);
				
				var queryPreResps =	"";
				
				if ( data.categ[0].codsPreResp != "")
				{
					codsPreResps  = data.categ[0].codsPreResp.split(';');
									
					for (i = 0; i < codsPreResps.length; i++)
					{
						
						if ( $.trim( codsPreResps[i] ) != "" )
						{
							if (i == 0)
							{
								queryPreResps =	' SELECT Descricao FROM PreResposta ' + 
												' WHERE ';
							} else 
							{
								queryPreResps += ' OR '
							}
							
							queryPreResps += ' codPreResp = ' + codsPreResps[i];
						}
					}
				}
				
				if (queryPreResps != "")
				{
					$.post(url, { "query": queryPreResps, "jsonObjName": "preResps" }, function(data) {
	
						var preResps = "";
						
						if (data.preResps[0].Descricao != undefined)
						{
							for (i = 0; i < data.preResps.length; i++)
							{
								desc = data.preResps[i].Descricao;
								
								if ( $.trim(desc) == "" )
									desc = 'Informada pelo usuário';
									
								preResps += '['+ desc +'], ';
							}
							
							$('input[name="preResps"]').val( preResps );
						}
	
					 }, "json");
				}
				
			}
		})
	})
	
	
	// SUBMIT do form de cadastro de "Nova Categoria"
	$('form[name="categoria"]').submit(function(evt)
	{
		evt.preventDefault();
		
		valido = $(this).validationEngine('validate');
        
		if (valido) 
		{
			$form = $(this);
			var parametros = $form.serialize();
			var action     = $form.attr('action');
			
			$form.children().css('display', 'block');
			
			$.ajax({
				url: action,
				data: parametros,
				type: "POST",
				dataType: "text",
				timeout: 300000, // 5 minutos
				cache: false,
				success: function( data, textstring ) {
					
					if ( data.indexOf('sucesso!') >= 0 )
					{
						jAlert('Operação realizada com sucesso!', 'Informação', function() 
						{
							$('#novaCategPerg').dialog('close');
							window.location.reload();
						});
	
					} else
					{
						$('<div/>').html(data).dialog({
							close: function(event , ui){
								$(this).remove();
							},
							modal: true, 
							title: 'Erro'
						});
					}
					
					$(this).children().css('display', 'none');
				}
			});
			
		}
	});
	
	
	// AÇÃO o botão "Adicionar Pré-respostas"
	$('#addPreRespostas').live({
		
		click: function() 
		{
			$divPreResps = $('<div id="preResps"></div>');
			
			
			$.ajax({
				url: '/pesquisacampo/manip_dados/jsonGeral.php',
				data: { tabelaPrincipal: 'preResposta', jsonObjName: 'preResp' },
				type: "POST",
				dataType: "json",
				timeout: 300000, // 5 minutos
				cache: false,
				success: function( data ) {
					
					html = '';
					
					if (data.preResp.length > 0)
					{
						preResps = data.preResp;
						pos = 0;
						html +=	'Escolha a categoria:<br/>';
						
						while (pos < preResps.length)
						{
							categ_base  = preResps[pos].codCategPreResp;
						
							html +=	'<div id="categPreResp_'+ preResps[pos].codCategPreResp +'" >' + 
										'<label class="categPreResp">' +
											'<input type="radio" name="categPreResp" value="'+ 
										     preResps[pos].codCategPreResp + '" />' +
											 preResps[pos].categPreResp +
										'</label>';
							
							while ( (pos < preResps.length) && (categ_base == preResps[pos].codCategPreResp) )
							{
								codCateg   = preResps[pos].codCategPreResp;
								codPreResp = preResps[pos].codPreResp;
								preResp    = preResps[pos].preResp;
								preResp    = preResp == "" ? "(Informada pelo usuário)" : preResp;
								
								html +=	'<label class="preResp">' + 
											'<input type="checkbox" name=categ_"'+ codCateg+ '" value="'+ codPreResp +'" />' + 
											preResp +
										'</label>';
								pos++;
							}
							
							html += '</div>';
							
							if ( pos < preResps.length )
							{
								categ_base  = preResps[pos].codCategPreResp;
							}
							
						}
						html += '</br></br><input type="button" id="btCadPreResp" value="Cadastrar" />'; 

					}
					
					if (html != "")
					{
						$dialog = $('<div id="dialogPreResps">'+ html +'</div>');
						
						$dialog.find('label.categPreResp').css({
							display: 'block',
							fontWeight: 'bold',
							padding: '15px 0 10px 0'
							
						});
						
						$dialog.find('label.preResp').css({
							display: 'none',
							padding: '0 0 3px 18px'
							
						});
						
						$dialog.dialog({ 
							modal: true, 
							position: 'top',
							title: 'Pré-respostas',
							width: 650,
							buttons: 
									[
										{
											text: "Confirmar",
											click: function() 
											{
												addPreResps( $(this) );
											}
										},
										{
											text: "Cancelar",
											click: function() 
											{ 
												$(this).dialog("close");
											}
										}
									]
						})
						.css({
							padding: "25px"
						});
						
					}
					
				}
				
			});
			
		}
	});
	
	$('#btCadPreResp').live('click', function() {
		
		$dialog = $(this).closest('div');
		
		// carregando a página de cadastro de Pré-respostas  na dialog
		$.post("/pesquisacampo/adm/preResposta_cad.php", function(data) {
			
			$dialog.html(data);
			$dialog.dialog( "option", "title", "Cadastrar pré-respostas");
			
			new_button = {
							text: "Cadastrar",
							click: function() { cadPreResps(); }
						 };
						 
			// alterando a ação do "Confirmar"
			var buttons = $dialog.dialog( "option", "buttons" );			 
			// primeiro button corresponde ao "Confirmar":
			buttons[0] = new_button;
			
			$dialog.dialog( "option", "buttons", buttons );
						
			
	 	});
	 
	});
	
	
	$('#dialogPreResps').find('label.categPreResp').live({
		change: function() {
			
			$('label.preResp').css('display', 'none');
			$(this).siblings('label.preResp').css('display', 'block');
		}
	});
	
	/* Cadastra novas pré-respostas
	 */
	function cadPreResps()
	{
		alert('aki');
	}
	
	function addPreResps( $dialog ) 
	{
		var preResps    = '';
		var codPreResps = '';
		
		$container = $dialog.find('input:radio:checked').closest('div');
		
		$container.find('input:checkbox:checked').each(function() {
			preResps 	+= '[' + $.trim( $(this).parent().text() ) + '],  ';
			codPreResps += $.trim( $(this).val() ) + ';';
		});
		
		$('#formCadastroCateg').find('input[type="text"][id="preResps"]'      ).val(preResps);
		$('#formCadastroCateg').find('input[type="hidden"][id="codsPreResps"]').val(codPreResps);
		
		$dialog.dialog('close');
	}
	

/* PERGUNTAS -> CADASTRO
----------------------------------------------------------*/
	
	$('#cadPergunta').find("select[name='codSecao']").live('change', function() {
	
		var secao = 0;
				
		$(this).children('option:selected').each(function () {
			
			secao = Number( $.trim($(this).val()) );
			
		});
		
		if (secao > 0)
		{
			$.ajax({
				url: '../config/funcoes_db.php',
				data: {acao: 'ultima_ordem', secao: secao},
				type: "POST",
				dataType: "text",
				timeout: 300000, // 5 minutos
				cache: false,
				success: function( data, textstring ) {
					
					var ultimaOrdem = Number(data);
					
					if ( !isNaN(ultimaOrdem) )
					{
						$('input[name="Ordem"]').val( ultimaOrdem + 1 )
					} else
					{
						$('input[name="Ordem"]').val('')
					}
				}
				
			});
		} else
		{
			$('input[name="Ordem"]').val('')
		}
	
	});
	
	$("select[name='tipoElemento[]']").live('change', function() {
	
		var tipo = "";
		
		$(this).children('option:selected').each(function () {
			tipo = $.trim( $(this).val() );
		});
		
		var $tboryContext = $(this).closest('tbody');
		controlaAltern(tipo, $tboryContext);
	
	}).change();
	  
	

	$('form[name="formCadastroPerg"]').submit(function(evt) {
		
		evt.preventDefault();
		
		valido = $(this).validationEngine('validate');
        
		if (valido) 
		{
			$('input, select').removeAttr('disabled');
			
			var $dialog = $('<div id="dialog"></div>');
			var iconCarregando = '<img src="../images/loading_bar-01.gif" style="width:100%; height:30px; margin-top:20px;" />';
			
			var action = $(this).attr('action');
			var params = $(this).serialize();
			
			$.ajax({
				url: action,
				data: params,
				type: "POST",
				dataType: "text",
				timeout: 300000, // 5 minutos
				cache: false,
				beforeSend: function(){
					$dialog.append('Incluindo pergunta...<br>' + iconCarregando)
						   .dialog({ 
						   		modal: true, 
								title: 'Inclusão'
							})
							.css({
								paddingTop: "25px"
							});
				},
				error: function(xhr,er) {
					
					$dialog.html('<p>Ops! ocorreu um erro! Descrição do Erro: <br><br>' + xhr.responseText + '</p>')
					.dialog({
						close: function(event , ui){
							$(this).remove();
						},
						modal: true, 
						title: 'Erro'
					})
				},
				complete: function() {
					$dialog.remove();
				},
				success: function( data, textstring ) {
					
					if ( data.indexOf('sucesso!') >= 0 )
					{
						jAlert(data, 'Informação', function() {
							window.location = 'area_admin.php?page=pergunta&acao=cad';
						});
					} else 
					{	
						$('<div/>').html(data).dialog({
							close: function(event , ui){
								$(this).remove();
							},
							modal: true, 
							title: 'Erro'
						});
					}
				}
				
			});
		}
		
	});
	
	
	
	
	
/* PERGUNTAS -> ALTERAÇÃO
----------------------------------------------------------*/

	$('form[name="formAlteracaoPerg"]').submit(function(evt) {
		
		evt.preventDefault();
		
		valido = $(this).validationEngine('validate');
        
		if (valido) 
		{
			$('input, select').removeAttr('disabled');
			
			var $dialog 	   = $('<div id="dialog"></div>');
			var iconCarregando = '<img src="../images/loading_bar-01.gif" style="width:100%; height:30px; margin-top:20px;" />';
			
			var action = $(this).attr('action');
			var params = $(this).serialize();
			
			$.ajax({
				url: action,
				data: params,
				type: "POST",
				dataType: "text",
				timeout: 300000, // 5 minutos
				cache: false,
				beforeSend: function(){
					$dialog.append('Alterando pergunta...<br>' + iconCarregando)
						   .dialog({ 
						   		modal: true, 
								title: 'Inclusão'
							})
							.css({
								paddingTop: "25px"
							});
				},
				error: function(xhr,er) {
					
					$dialog.html('<p>Ops! ocorreu um erro! Descrição do Erro: <br><br>' + xhr.responseText + '</p>')
					.dialog({
						close: function(event , ui){
							$(this).remove();
						},
						modal: true, 
						title: 'Erro'
					})
				},
				complete: function() {
					$dialog.remove();
				},
				success: function( data, textstring ) {
					
					if ( data.indexOf('sucesso!') >= 0 )
					{
						jAlert(data, 'Informação', function() {
							window.location = 'area_admin.php?page=pergunta&acao=list';
						});
					} else 
					{	
						$('<div/>').html(data).dialog({
							close: function(event , ui){
								$(this).remove();
							},
							modal: true, 
							title: 'Erro'
						});
					}
				}
				
			});
		}
		
	});
	
	
})